1. Technical Field
The present invention relates generally to power/performance measurement and management in processing systems, and more particularly, to a prediction scheme for predicting subsystem or processor power needs for a change to another nominal performance state.
2. Description of the Related Art
Power management in both large and small scale systems has become a necessity, for reason of both thermal management and power cost and power availability. In particular, very large scale systems may not be installed or fabricated with enough power availability or thermal handling capability to run all processors in the system at their maximum performance levels continuously. Nor is such use typically desirable. Server complexes, or even a particular server rack may exceed the available power if each processor is operated at full capacity, assuming sufficient cooling is available to maintain the system heat at an equilibrium level. The circuit from which the server system draws power may be limited, and further, the power delivered to an overall facility may be limited.
Therefore, power capping is frequently employed in such systems, and the individual power budgets of sub-systems down to the processor level are controlled by algorithms that determine the individual power budgets to meet the system thermal or available-power constraints. However, the information available to such systems typically includes only present-time power usage for the various processing sub-systems and estimated maps of performance levels versus power usage for specified workloads. Since workloads and environments such as temperature are typically dynamically changing in server systems and other variable-workload systems, a typical model of the impact of power budgets within a system or subsystem can generally only be accurate in a long-term average sense, and only then if the present workload is accurately reflected by the model.
With real-time power/performance control operating at high update rates in a processing system, the impact of a power budget that does not take into account the real-time workload and environmental changes is a loss in efficiency due to decisions that are not informed at a sufficient rate. For example, a particular sub-system might provide higher performance for the given workload if its power budget were increased slightly, but the power level cap for that sub-system does not permit a change in the nominal performance state and it is not apparent that the change would be slight. In converse, a sub-system may have a workload that is inefficiently using power and could dramatically change its power usage with only a small change in nominal performance state. While techniques such as dynamic voltage-frequency scaling (DVFS) and clock modulation can rapidly respond to power budget changes, e.g., changes in “capped” peak power, without information as to how the performance of each sub-system relates to the power usage for the sub-system, power management algorithms lack information on how changes in the power caps will affect system efficiency. Since changes in the power budgets cause controls such as DVFS and clock modulation to change the nominal operating points of the subsystems to meet the new power budgets, the dependency of performance on adjustment to the power budgets should be well-informed in order to optimize system efficiency in the allocation of the overall system power budget.
However, historical workload data is not typically sufficient to perform such real-time fine-tuning of power budgets, and while the input control to the individual subsystem is the performance state operating point, the limiting factor is generally the power cap. Therefore the nominal operating point is typically controlled only indirectly by the setting of power budgets. System operators setting power budget controls for sub-systems in such systems could note changes that could improve system efficiency in terms of performance state operating point, if accurate real-time information about how the power budget relates to the efficiency of individual sub-systems were available. Automatic power budgeting algorithms provide resultant power caps from an input (or fixed value) that is the overall power at the system partition level where power can be re-allocated among sub-systems.
Therefore, it would be desirable to provide a method and system for accurately predicting power usage changes for a change in nominal processor or sub-system performance state changes that operates at a rate sufficient to inform high update rate power budget control processes to improve the power usage efficiency for the overall system. It would further be desirable to provide display data to system operators that enable an enhanced view of power level changes required to cause particular performance state changes in individual sub-systems.